A Correctness Verification Technique for Commercial FPGA Synthesis Tools

نویسندگان

  • Eui-Sub Kim
  • Junbeom Yoo
  • Jong-Gyun Choi
  • Jang-Yeol Kim
  • Jang-Soo Lee
چکیده

The PLCs (Programmable Logic Controller) have been widely used to implement the safety-critical system such as RPSs (Reactor Protection System) in Korean nuclear power plants. Recently, there have been attempted to implement the software in RPSs by FPGAs (Filed-Programmable Gate Array) [1][2], due to the increasing maintenance cost of PLCs and the higher performance of FPGAs. The FPGAs are typically modeled with HDLs (Hardware Description Languages) such as Verilog and VHDL by software designers manually, and then subsequently synthesized into gate-level design and physical layout by software synthesis tools of FPGA vendors (e.g., ‘Synopsis Synplify Pro’ [3] and ‘Cadence Encounter RTL Compiler’ [4]). Once the FPGA designers designs Verilog programs, the commercial synthesis tools automatically translate the Verilog programs into EDIF programs so that the designers can have largely focused on HDL designs for correctness of functionality. Nuclear regulation authorities, however, require more considerate demonstration of the correctness and safety of mechanical synthesis processes of FPGA synthesis tools, even if the FPGA industry have acknowledged them empirically as correct and safe processes and tools. In order to assure of the safety, the industry standards for the safety of electronic/electrical devices, such as IEC 61508 [5] and IEC 60880 [6], recommend using the formal verification technique. There are several formal verification tools (i.e., ‘FormalPro’ [7], ‘Conformal’ [8], ‘Formality’ [9] and so on) to verify the correctness of translation from Verilog into EDIF programs, but it is too expensive to use and hard to apply them to the works of 3rd-party developers. This paper proposes a formal verification technique which can contribute to the correctness demonstration in part. It formally checks the behavioral equivalence [10] between Verilog and subsequently synthesized Netlist with the VIS verification system [11]. A Netlist is an intermediate output of FPGA synthesis process, and EDIF [12] is used as a standard format of Netlists. If the formal verification succeeds, then we can assure that the synthesis process from Verilog into Netlist worked correctly at least for the Verilog used. In order to support the formal verification, we developed the mechanical translator ‘EDIFtoBLIFMV,’ which translates EDIF into BLIF-MV [13] as an input front-end of VIS system, while preserving their behavior equivalence. It consists of three-steps – Parsing, Pro-processing and Translation. On other hands, the translation from Verilog to BLIF-MV is straightforward because the VIS provides an in-house translator ‘vl2mv’ [14], which translates Verilog into BLIF-MV automatically. We performed the case study with an example of a preliminary version of RPS [15] in a Korean nuclear power plant in order to provide the efficiency of the proposed formal verification technique and implemented translator. It uses the ‘Actel Libero IDE’ [16] (internally, ‘Synopsys Synplify Pro’ [3]) to synthesize Netlist from the Verilog program, and also uses the ‘EDIFtoBLIF-MV’ to translate Netlist into BLIF-MV. The VIS verification system is then used to prove the behavioral equivalence. This paper is organized as follows: Section 2 provides background information. Section 3 explains the developed tool, which translates EDIF to BLIF-MV. A case study with Verilog examples of a Korean nuclear power plant is presented in Section 4 and Section 5 concludes the paper and provides remarks on future research extension.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Verification Techniques for COTS Dedication of Commercial FPGA Tools

FPGA (Field-Programmable Gate Array) has received much attention from nuclear industry as an alternative platform of digital I&C (Instrumentation & Control) in nuclear power plants [1,2]. Commercial FPGA synthesis tools synthesize gate-level designs mechanically from RTL (Register Transistor Logic) designs modeled with HDLs (Hardware Description Languages). Nuclear regulation authorities [3], h...

متن کامل

FPGA Implementation of JPEG and JPEG2000-Based Dynamic Partial Reconfiguration on SOC for Remote Sensing Satellite On-Board Processing

This paper presents the design procedure and implementation results of a proposed hardware which performs different satellite Image compressions using FPGA Xilinx board. First, the method is described and then VHDL code is written and synthesized by ISE software of Xilinx Company. The results show that it is easy and useful to design, develop and implement the hardware image compressor using ne...

متن کامل

An Automatic Design Flow from Formal Models to FPGA

SMV [McM93] is a language suitable for integrated circuit design and optimized for formal verification. VHDL [IEE93] is a design format suitable for simulation and synthesis, but poorly designed for formal verification purposes. The contribution of this paper is the integration of the two approaches through the definition of systematic rules to translate SMV programs into VHDL descriptions, pro...

متن کامل

Embedding Hardware Verification Within a Commercial Design Framework

1 I n t r o d u c t i o n To guarantee reliable circuits especially in safety critical applications, and to avoid time consuming and costly redesigns, tools for checking design errors in circuits are mandatory. Usually, this is accomplished by specifying the desired functions and properties of the chip and proving formally that a given implementat ion behaves according to the specification. Alt...

متن کامل

A Trust Based Probabilistic Method for Efficient Correctness Verification in Database Outsourcing

Correctness verification of query results is a significant challenge in database outsourcing. Most of the proposed approaches impose high overhead, which makes them impractical in real scenarios. Probabilistic approaches are proposed in order to reduce the computation overhead pertaining to the verification process. In this paper, we use the notion of trust as the basis of our probabilistic app...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014